Don't force BUTTON1_MASK on non-touch events
authorMatthias Clasen <mclasen@redhat.com>
Sat, 7 Apr 2012 00:25:21 +0000 (20:25 -0400)
committerMatthias Clasen <mclasen@redhat.com>
Sat, 7 Apr 2012 00:25:21 +0000 (20:25 -0400)
This problem was pointed out by Hans de Goede in
https://bugzilla.gnome.org/show_bug.cgi?id=673458

gdk/gdkwindow.c

index 7ba6f15f48c29d599924ad90897c8b043f900935..2683073d0993b8ce1ddf580958731ae1b645ad2b 100644 (file)
@@ -9716,11 +9716,10 @@ proxy_button_event (GdkEvent *source_event,
       gdk_event_set_device (event, gdk_event_get_device (source_event));
       gdk_event_set_source_device (event, source_device);
 
-      if (type == GDK_BUTTON_RELEASE)
-       event->button.state |= GDK_BUTTON1_MASK;
-
       if (is_touch_type (source_event->type))
-       {
+        {
+          if (type == GDK_BUTTON_RELEASE)
+            event->button.state |= GDK_BUTTON1_MASK;
          event->button.button = 1;
          event->button.axes = g_memdup (source_event->touch.axes,
                                         sizeof (gdouble) * gdk_device_get_n_axes (source_event->touch.device));